package com.cal.calonecal.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cal.calonecal.common.Response;
import com.cal.calonecal.pojo.dto.CreateClassDTO;
import com.cal.calonecal.pojo.entity.ClassRoom;
import com.cal.calonecal.pojo.entity.UserInfo;

import java.util.List;

/**
 * @author 76004
 * @apiNote
 * @date 2023/6/6 0:37
 */
public interface IClassRoomService {
    public Response<Void> createClass(CreateClassDTO createClassDTO);

    public Response<IPage<UserInfo>>getStudents(Long classId, Integer pageSize, Integer pageNum);

    public Response<Void>deleteClass(Long classId);

    public Response<IPage<ClassRoom>>getClassRooms(Integer pageSize, Integer pageNum, Long UserId);

    public Response<Void>updateClassStatus(Long classId, Integer status);

    public Response<Void>joinClass(Long classId);

    public Response<Void>removeStudent(Long UserId, Long classId);

    public Response<Void>exitClass(Long classId);

    public Response<Void>updateClass(ClassRoom classRoom);

    public Response<IPage<ClassRoom>>selectByTeacherId(Integer pageNum, Integer pageSize);
}
